package zhongbo.java.air.monitor.service;

import org.springframework.data.domain.Page;
import zhongbo.java.air.common.vo.PageVo;
import zhongbo.java.air.monitor.model.AirAlertLog;
import zhongbo.java.air.monitor.model.FlightActivityDaily;

import java.util.Date;
import java.util.List;

/**
 * 说明：
 *
 * @author 钟波dellNotebook
 * @since 2025年04月08日 星期二 04:05:30
 */
public interface IFlightActivityDailyService<F> {

    /**
     * 查询当天分组统计结果
     *
     * @param date 某一天的日期 2025-04-08
     * @return 当天分组统计结果
     */
    List<FlightActivityDaily> selectDailyStats(String date);

    /**
     * 从数据库查询当天分组统计结果
     *
     * @param date 某一天的日期 2025-04-08
     * @return 当天分组统计结果
     */
    List<FlightActivityDaily> getDailyStats(String date);

    /**
     * 根据 icaoCode 和 date 查询记录
     *
     * @param icaoCode ICAO 24位地址码
     * @param date 统计日期
     * @return 查询结果
     */
    List<FlightActivityDaily> selectByIcaoAndDate(String icaoCode, Date date);

    /*
    * 增加
    *
    * */
//    FlightActivityDaily insert(FlightActivityDaily flightActivityDaily);
    FlightActivityDaily add(FlightActivityDaily entity);
    /*
    * 修改
    *
    * */
//    FlightActivityDaily update(FlightActivityDaily flightActivityDaily);
    FlightActivityDaily edit(FlightActivityDaily edit);
    /*
    * 删除
    *
    * */
//    boolean deleteById(String id);
    boolean delete(String entityId);
    /*
    * 查询
    *
    * */
//    FlightActivityDaily queryById(String id);
    FlightActivityDaily findOne(String entityId);
    /*
    * 分页
    * */
    PageVo<FlightActivityDaily> findPage(int page, int pageSize, String keyword, String fields, String oderByField, boolean orderByAsc);
}
